<template>
  <div class="app">
    <nuxt-child />
  </div>
</template>

<script>
export default {
  data () {
    return {}
  },
  mounted () {
    this.resetsVuex()
  },
  methods:{
    resetsVuex() {
      if (sessionStorage.getItem("store")) {
        this.$store.replaceState(
          Object.assign(
            {},
            this.$store.state,
            JSON.parse(sessionStorage.getItem("store"))
          )
        );
        sessionStorage.removeItem("store");
      }
      //在页面刷新时将vuex里的信息保存到sessionStorage里
      window.addEventListener("beforeunload", (e) => {
        sessionStorage.setItem("store", JSON.stringify(this.$store.state));
      });
    },
  }
}
</script>

<style lang='less' scoped>
  .app {
    height: 100%;
  }
</style>